package com.yunxin.core.domain.model.order;

import com.yunxin.core.application.admin.team.Team;

import java.util.List;

/**
 * @author zero°
 * @since 2023-07-12
 */
public interface OrderAllocationBelongToAccountRepository {

    /**
     * 保存
     * @param orderAllocationBelongToAccount orderAllocationBelongToAccount
     * @return boolean
     */
    boolean saveOrderAllocationBelongToAccount(OrderAllocationBelongToAccount orderAllocationBelongToAccount);

    /**
     * 更新
     * @param orderAllocationBelongToAccount orderAllocationBelongToAccount
     * @return boolean
     */
    boolean updateOrderAllocationBelongToAccount(OrderAllocationBelongToAccount orderAllocationBelongToAccount);

    /**
     * 根据分配单id查询
     * @param allocationOrderId allocationOrderId
     * @return OrderAllocationBelongToAccount
     */
    OrderAllocationBelongToAccount getOrderAllocationBelongToAccountByAllocationOrderId(Long allocationOrderId);

    /**
     * 查询已分配的团队信息
     * @param allocationOrderId
     * @return
     */
    List<Team> selecteamName(Long allocationOrderId);

    /**
     * 根据已有团队查询未分配团队
     * @param teamIds
     * @return
     */
    List<Team> selecteamNameNo(List<Integer> teamIds);


    /**
     * 查询所有团队信息
     * @return
     */
    List<Team> selectAllTeamName();

}
